package org.jeecg.modules.api.wlhy.debang.bean;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;

@Data
@TableName("db_order")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class DeBangOrder {

    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;

    private String orderCode;    //订单编号
    private String goodsName;    //货物名称
    private String departureName;    //始发地（精确到区）
    private String arrivalsName;    //目的地（精确到区）
    private java.util.Date useCarTime;//用车时间
    private java.util.Date arrivalTime;//		到货时间
    private String needQuantity;    //		用车数量
    private DeBangVehicle cars;//需要的车辆集合
    private String productType;//产品类型（4干线/ 5精准整车/6整车配送（原名称为拼车）/7货主8短途9精准专车））
    private String[] added_service;//增值服务（1装卸/2签收单/3进仓/4代收货款/5保价/6押车）
    private String failuretime;//订单失效时间
    private String contactsName;//		联系人姓名
    private String contactsPhone;//		联系人电话
    private String createDeptName;//	联系人部门名称
    private String remarks;//		备注
    private String priceofgoods;//		货物价值
    private String unifiedCode;//		部门标杆编码
    private String price;//	报价金额
    private String packing;//	包装
    private String customerCode;//	客户编码
    private String departureTransshipment;//		出发转运场
    private String ArriveTransshipment;//	到达转运场

    //订单处理状态通知
    private String orderStauts;//		订单状态： 0：订单关闭， 1：确认中标，2：已打印运输合同，3：确认发车，4：确认到达，5：已开单（传输货物价值、货物名称、数量、出发外场和包装、运单号），6：竞标失败，7：已签收，8：回传、重量、体积、价格、车次号， 9：不允许修改重量/体积/货物件数等值
    private String uniqueId;//		唯一标识
    private String goodsPrice;//		货物价值
    private String num;//		数量（只有orderStauts为5的时候才会传输）
    private String departureFieldNameCode;//		出发外场（只有orderStauts为5的时候才会传输）
    private String billCode;//			运单号
    private Date operationTime;//	操作时间（只有orderStauts为3和4的时候才会传输）
    private String departureDetaile;//		发货详细地址（只有orderStauts为1的时候会传输）(精准整车订单才会传)
    private String arrivalsDetaile;//		收货详细地址（只有orderStauts为1的时候会传输）(精准整车订单才会传)
    private String consigneeContactName;//		收货人（只有orderStauts为5的时候会传输）
    private String consigneeMoblie;//		收货人电话（只有orderStauts为5的时候会传输）
    private String vehicletips;//		车次号（只有orderStauts为8的时候才会传输）(干线订单)
    private String dimensional;//		体积（干线订单orderStauts为8的时候传输，整车订单orderStauts为5的时候传输）
    private String weight;//		重量（干线订单orderStauts为8的时候传输，整车订单orderStauts为5的时候传输）
    private String paymentMethod;//		付款方式（只有orderStauts为5的时候会传输）    代码解释：CH现金；CD银行卡；CT月结；DT当月结；FC到付


    //大车直达
    private String goodsNumber;//		货物件数
    private String packingGoods;//		货物包装
    private String isSignReceipt;//		是否含签收单（Y是包含N是不包含）
    private Integer declaredValue;//		货物价值（报价申明）
    private String remark;//		备注
    private String consignorName;//		发货联系人
    private String consignorPhone;//		发货联系人手机号
    private String deliveryTime;//		接货时间
    private String departureAddress;//		发货地址 按照区编码：如310105
    private String departureCity;//			发货地址 按照城市编码：如310105
    private String consigneeName;//		收货联系人
    private String consigneePhone;//		收货联系人手机号
    private String arriveTime;//		到达时间
    private String consigneeTel;//		收货人固定电话
    private String arriveAddress;//		收货地址按照区编码如 ：110112
    private String arriveCity;//		收货地址按照城市编码如 ：110112
    private String arriveDetail;//		发货地址详情
    private Integer bareCar;//		裸车价
    private Integer allCost;//		总费用
    private Integer orderStatus;//		订单状态
    private String deliveryOrder;//		是否接送货（Y/N）
    private String deptName;//		订单创建部门
    private String deptCode;    //			部门标杆编码
    private String isMustreach;//		是否时效紧急（Y/N）
    private String lugeId;//		路歌供应商ID（只有路歌订单会传）


    private String platformcode;//	平台编码
    private String ciphertxt;//	密码
    private String servicePhone;//	平台电话
    private String platform_orderCode;//	平台订单号


    private String msgId;//必填	统一转发接口名称
    private String vehicleNo;//		车牌号
    private String agentName;//	经纪人姓名
    private String agentPhone;//	经纪人电话
    private String driverName;//		司机姓名
    private String dirverPhone;//		司机电话
    private String quantity;//		件数
    private String abnormalMark;//		异常反馈备注
    private String abnormalImages;//??list	异常照片集合（最多4张）
    private Long jGoodsStartTime;//		接货开始时间（时间戳）
    private Long jGoodsEndTime;//		接货结束时间（时间戳）
    private String deliveryVehicleNumber;//	接货车牌号


    private String bidding_state;//	必填	车辆所处的状态9：已发车,10：已到达11：开票子公司12:传送货出发到达时间
    private String openCompany;//		开票子公司名称（bidding_state    为11的时候传输这个字段）
    private Date startTime;//	必填	出发时间
    private String specialLineAddress;//		专线地址（到达状态10的时候传）
    private String linkman;//		联系人（到达状态10的时候传）
    private String linkmanPhone;//		 联系人电话（到达状态10的时候传）
    private Long sGoodsStartTime;//		送货开始时间（时间戳）（bidding_state    为12的时候传输这个字段）
    private Long sGoodsEndTime;//		送货结束时间（时间戳）（bidding_state    为12的时候传输这个字段）


    private String waybillNo;//		运单号
    private String signState;//		签收状态（正常签收1/异常签收0）
    private Double actualPayment;//		实付金额
    private Double quotationAmount;//		报价金额
    private Double adjustmentAmount;//	调整金额（为0表示未做调整）
    private String reason;//		原因   JOAB_FARE:押车费    IGH_WIDTH:超高/超重      Destination_Change:目的站变更 Unloading_Charge:卸车费     Into_Storage_Fee:进仓费     THER:其他

    private String amountMoney;//		金额
    private String result;//		对账结果（1成功 0失败）

    private String state;//	付款状态(1已付款 0未付款，2：付款中)
    private String workflowNo;//	付款工作流号
    private String interfaceCode;//		平台编码
    private String realPay;//	实付尾款


    private List<DeBangPathUrlInfo> pathUrlInfo;//照片

}
